package com.zhentao.day06;

public class ShapeTest {
  public static void main(String[] args) {
    // AM :
    // 1. 实例化对象
    ZhaoXiang zx = new Phone() ;

    // 2. 调用接口中的默认方法
    // 通过子类实例, 向上转型后, 调用父接口的默认方法
    zx.luoXiang();







    // PM :
    // 无参构造器是存在的, 但是抽象类在new时, 因为其实现有抽象方法。没有方法体,程序就不知道怎么运行了。
    // 所以, 抽象类不能 直接 new , 如果想实例化当前抽象类, 需要将其内部的所有抽象方法都具体的实现出来。
    /*Shape shape = new Shape(){
      public  double minJi(){
        return 0.0 ;
      }
    };*/

    // 所以说, 一般情况下, 抽象类都不会直接去实例化。
    // 抽象类的意义在于, 它可以作为一个父类, 去实现一些共性的方法, 然后, 子类继承它, 去实现自己的特有方法。

  }
}
